{% extends "_layout.html" %} {% from "_macros.html" import summary_table, row %} {# Dunning email — Stripe retries failing cards on its own (3-4 times over ~14 days by default), but we still want the customer to know *now* so they can fix it before service interrupts. #} {% block title %}We couldn't charge your card — {{ project_name }}{% endblock %} {% block preheader %}Update your payment method to keep your {{ plan_name }} subscription active.{% endblock %} {% block heading %}We couldn’t charge your card.{% endblock %} {% block body %}
We tried to renew your {{ plan_name }} subscription and the charge didn’t go through. Most of the time this is a simple expiration, an address mismatch, or a bank flag — quick to fix.
We’ll keep retrying automatically over the next few days. Your plan stays active until those retries are exhausted; update your card before then to avoid an interruption.
{% endblock %} {% block summary %} {% call summary_table() %} {{ row("Plan", plan_name) }} {{ row("Attempted", charged_at_human) }} {{ row("Amount", amount_formatted, emphasis=True) }} {% endcall %} {% endblock %} {% block cta_label %}Update payment method{% endblock %} {% block footer_note %}The button opens your billing portal where you can swap or update the card. Questions? Reply to this email.
{% endblock %}